package com.nengchuan.kbms.dfs.dao;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.nengchuan.kbms.dfs.entity.dto.UserOperateCreateListDTO;
import com.nengchuan.kbms.dfs.entity.dto.UserOperateCreatePageDTO;
import com.nengchuan.kbms.dfs.entity.dto.UserOperateDownloadListDTO;
import com.nengchuan.kbms.dfs.entity.dto.UserOperateDownloadPageDTO;
import com.nengchuan.kbms.dfs.entity.po.UserOperateHistory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nengchuan.kbms.dfs.entity.vo.OperateTopVO;
import com.nengchuan.kbms.dfs.entity.vo.UserOperateCreateVO;
import com.nengchuan.kbms.dfs.entity.vo.UserOperateDownloadVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * <p>
 * 用户操作历史 Mapper 接口
 * </p>
 *
 * @author abe
 * @since 2020-04-01
 */
@Repository
public interface UserOperateHistoryMapper extends BaseMapper<UserOperateHistory> {

    /**
     * 操作排行
     */
    List<OperateTopVO> operateTop(@Param("opt_type") String optType);

    /**
     * 我的创建（分页
     */
    IPage<UserOperateCreateVO> createPage(UserOperateCreatePageDTO pageDTO);

    /**
     * 我的导出（分页
     */
    IPage<UserOperateDownloadVO> downloadPage(UserOperateDownloadPageDTO pageDTO);

    /**
     * 我的创建（列表
     */
    List<UserOperateCreateVO> createList(UserOperateCreateListDTO listDTO);

    /**
     * 我的导出（列表
     */
    List<UserOperateDownloadVO> downloadList(UserOperateDownloadListDTO listDTO);
}
